# eric7.MultiProject.MultiProjectBrowser

Module implementing the multi project browser.

### Global Attributes

None

### Classes

MultiProjectBrowser | Class implementing the multi project browser.

### Functions

None

## MultiProjectBrowser

Class implementing the multi project browser.

### Derived from

QTreeWidget

### Class Attributes

ProjectFileNameRole
ProjectUidRole

### Class Methods

None

### Methods

MultiProjectBrowser | Constructor
__addNewProject | Private method to add a new project entry.
__addProject | Private method to add a project to the list.
__configure | Private method to open the configuration dialog.
__contextMenuRequested | Private slot to show the context menu.
__copyProject | Private method to copy the selected project on disk.
__createPopupMenu | Private method to create the popup menu.
__deleteProject | Private method to handle the Delete context menu entry.
__findCategoryItem | Private method to find the item for a category.
__findProjectItem | Private method to search a specific project item.
__multiProjectClosed | Private slot to handle the closing of a multi project.
__multiProjectOpened | Private slot to handle the opening of a multi project.
__newMultiProject | Private slot to handle the creation of a new multi project.
__openItem | Private slot to open a project.
__projectAdded | Private slot to handle the addition of a project to the multi project.
__projectClosed | Private slot to handle the closing of a project.
__projectDataChanged | Private slot to handle the change of a project of the multi project.
__projectOpened | Private slot to handle the opening of a project.
__projectRemoved | Private slot to handle the removal of a project from the multi project.
__removeProject | Private method to handle the Remove context menu entry.
__setItemData | Private method to set the data of a project item.
__showProjectProperties | Private method to show the data of a project entry.

### Static Methods

None

#### MultiProjectBrowser (Constructor)

MultiProjectBrowser(multiProject, project, parent=None)

Constructor

multiProject (MultiProject)
  reference to the multi project object
project (Project)
  reference to the project object
parent (QWidget)
  parent widget

#### MultiProjectBrowser.__addNewProject

__addNewProject()

Private method to add a new project entry.

#### MultiProjectBrowser.__addProject

__addProject(project)

Private method to add a project to the list.

project (MultiProjectProjectMeta)
  reference to the project metadata

#### MultiProjectBrowser.__configure

__configure()

Private method to open the configuration dialog.

#### MultiProjectBrowser.__contextMenuRequested

__contextMenuRequested(coord)

Private slot to show the context menu.

coord (QPoint)
  the position of the mouse pointer

#### MultiProjectBrowser.__copyProject

__copyProject()

Private method to copy the selected project on disk.

#### MultiProjectBrowser.__createPopupMenu

__createPopupMenu()

Private method to create the popup menu.

#### MultiProjectBrowser.__deleteProject

__deleteProject()

Private method to handle the Delete context menu entry.

#### MultiProjectBrowser.__findCategoryItem

__findCategoryItem(category)

Private method to find the item for a category.

category (str)
  category to search for

Return:
  reference to the category item or None, if there is no such item

Return Type:
  QTreeWidgetItem or None

#### MultiProjectBrowser.__findProjectItem

__findProjectItem(project)

Private method to search a specific project item.

project (MultiProjectProjectMeta)
  reference to the project metadata

Return:
  reference to the item or None

Return Type:
  QTreeWidgetItem

#### MultiProjectBrowser.__multiProjectClosed

__multiProjectClosed()

Private slot to handle the closing of a multi project.

#### MultiProjectBrowser.__multiProjectOpened

__multiProjectOpened()

Private slot to handle the opening of a multi project.

#### MultiProjectBrowser.__newMultiProject

__newMultiProject()

Private slot to handle the creation of a new multi project.

#### MultiProjectBrowser.__openItem

__openItem(itm=None)

Private slot to open a project.

itm (QTreeWidgetItem)
  reference to the project item to be opened

#### MultiProjectBrowser.__projectAdded

__projectAdded(project)

Private slot to handle the addition of a project to the multi project.

project (MultiProjectProjectMeta)
  reference to the project metadata

#### MultiProjectBrowser.__projectClosed

__projectClosed()

Private slot to handle the closing of a project.

#### MultiProjectBrowser.__projectDataChanged

__projectDataChanged(project)

Private slot to handle the change of a project of the multi project.

project (MultiProjectProjectMeta)
  reference to the project metadata

#### MultiProjectBrowser.__projectOpened

__projectOpened()

Private slot to handle the opening of a project.

#### MultiProjectBrowser.__projectRemoved

__projectRemoved(project)

Private slot to handle the removal of a project from the multi project.

project (MultiProjectProjectMeta)
  reference to the project metadata

#### MultiProjectBrowser.__removeProject

__removeProject()

Private method to handle the Remove context menu entry.

#### MultiProjectBrowser.__setItemData

__setItemData(itm, project)

Private method to set the data of a project item.

itm (QTreeWidgetItem)
  reference to the item to be set
project (MultiProjectProjectMeta)
  reference to the project metadata

#### MultiProjectBrowser.__showProjectProperties

__showProjectProperties()

Private method to show the data of a project entry.

Up